在開始開發之前,如果先了解一些語言的特性,正式進入開發後,比較能避開一些容易踩雷的地方!
本篇會介紹 Java 的生態系,例如很常聽到的 JVM 到底是什麼意思。還有型別的差異,PHP 跟 Java 之間有很大的不同!
先直接上 Java / PHP 比較圖:

兩個語言生態系的主要差異:JVM 是真正的多語言運行環境(Java/Kotlin/Scala 都能共用同一個 JVM),但 PHP 的引擎基本上只服務單一語言。這也間接說明了為什麼「JVM 語言」是一個常見詞彙、但幾乎沒人講「PHP 引擎語言」——生態系的開放程度從一開始就不一樣。
另外一個差異:PHP 沒有「編譯」這個獨立步驟,Java 是 JDK(含編譯器)→JRE→JVM 三層,PHP 是引擎直接讀原始碼執行;而 PHP 多了 SAPI 這一層,Java 沒有對應概念,因為 Java 應用本身就是長駐 process,不需要額外決定「怎麼跟 Web Server 整合」。
這張圖就像是「地圖」,可以讓我們了解其中的差異,這 30 天會先著重在其中兩層:JVM/bytecode 概念(懂「為什麼」就好,先不碰 JVM 調校)跟 Spring Boot 本身(這系列接下來 20 天的主戰場)。其他層級知道存在、之後如果有遇到問題就能大概知道往哪邊去研究。
(筆者目前正在旅行中,今天不小心難產了!之後幾天會陸續把這篇補完!)